Ground-Zerro / Phobos Public
Code Issues Pull requests Actions Releases View on GitHub ↗
543 B typescript
import { ClientGetSchema } from '#db/repositories/client/types';

export default definePermissionEventHandler(
  'clients',
  'update',
  async ({ event, checkPermissions }) => {
    const { clientId } = await getValidatedRouterParams(
      event,
      validateZod(ClientGetSchema, event)
    );

    const client = await Database.clients.get(clientId);
    checkPermissions(client);

    await Database.clients.toggle(clientId, false);
    await WireGuard.saveConfig();
    await Obfuscator.applyAll();
    return { success: true };
  }
);